/*
 *  KÉSZEN VAN
 *
 */

package jcworks;
import java.util.ArrayList;

public class Munkaterulet {

        //Local variables
        protected ArrayList<Epitoelemek> alkatresz = new ArrayList<Epitoelemek>();
        protected ArrayList<Drot> drotok = new ArrayList<Drot>();

        //Local function

        Munkaterulet()
        {
            if(Vezerlo.konzolnaplozas)
                    {
                        Vezerlo.naplozas("A munketerulet letrejott");
                    }
        }

	public void hozzaadEpitoelem(Epitoelemek epitoelem)
            {
                this.alkatresz.add(epitoelem);

                //Logging
                if(Vezerlo.konzolnaplozas)
                    {
                        Vezerlo.naplozas("A munketerulet hozzadta a(z) " + epitoelem.getAzonosito()  + ". azonositoju " + epitoelem.getClass() + " tipusu epitoelemet.");
                    }
                                
            }



	public  ArrayList<Epitoelemek> getAlkatreszLista()
            {
		return this.alkatresz;
            }


       public void clear()
        {
            alkatresz.clear();
            drotok.clear();
            
        }


	public void hozzaadDrot(Epitoelemek forrasElem, Epitoelemek celElem,Drot drot) throws Exception
            {
                //A drót bementi címe legyen az az elem, ahonnan jön a jel
                drot.setBemenetiCim(forrasElem);



                //irany => TRUE, ha bemenet, FALSE, ha kimenet.


                //A forráselem kiemeneti címe legyen a drót

                try
                    {
                        forrasElem.setDrotCim(drot, false);
                    }
                catch(Exception e)
                    {
                           if(Vezerlo.konzolnaplozas)
                                {
                                    Vezerlo.naplozas("Hiba keletkezett:");
                                    Vezerlo.naplozas(e.getMessage());

                                    System.exit(1);
                                }
                    }

                //A célelem bemeneti címe legyen a drót
                  try
                     {
                        celElem.setDrotCim(drot, true);
                     }
                catch(Exception e)
                    {
                         if(Vezerlo.konzolnaplozas)
                              {
                                Vezerlo.naplozas("Hiba keletkezett:");
                                Vezerlo.naplozas(e.getMessage());
                                System.exit(1);
                             }
                    }



                if(Vezerlo.konzolnaplozas)
                    {
                        Vezerlo.naplozas("A munkaterulet hozzadta a drotot a(z) " + forrasElem.getAzonosito() + " azonositoju elemtol a(z) " + celElem.getAzonosito() + " azonositoju elemhez.");
                    }

            }
}